package com.tanhua.dubbo.api;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.tanhua.domain.db.Question;
import com.tanhua.dubbo.mapper.QuestionMapper;
import org.apache.dubbo.config.annotation.Service;
import org.springframework.beans.factory.annotation.Autowired;

@Service
public class QuestionApiImpl implements QuestionApi {
    //注入对应映射对象
    @Autowired
    private QuestionMapper questionMapper;
    /**
     * 通过登录用户id查询用户的陌生人问题
     * @param id 登陆用户id
     * @return
     */
    @Override
    public Question selectById(Long id) {
        //创建条件查询器
        QueryWrapper<Question> queryWrapper = new QueryWrapper();
        queryWrapper.eq("user_id",id);
        return questionMapper.selectOne(queryWrapper);
    }

    /**
     * 更新陌生人问题
     * @param question
     */
    @Override
    public void save(Question question) {

        Question questionByDB = selectById( question.getUserId()); //这是通过查询数据库得到的数据
        if(  null == questionByDB){
            //不存在 -- 新增
            questionMapper.insert(question);
        }else {
            //存在 -- 更新
            question.setId(questionByDB.getId()); //按照表中的主键id更新--不然会同一个用户同一个问题会新增很多条记录
            questionMapper.updateById(question);
        }
    }

}
